package com.wjm.xml.Jsoup;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;


import java.io.IOException;

import java.net.URL;

/**
 * Data:2022年08月02日
 * Author:wjm
 * Content: Jsoup解析器解析xml文档
 *
 *
 * 获取Document对象的方法：
 *         public static Document parse(File in, String charsetName)
 *                 解析xml或html文件，返回Document对象
 *
 *         public static Document parse(String str)
 *                 解析xml或html字符串，返回Document对象
 *
 *         public static Document parse(URL url, int timeoutMillis)
 *                 通过网络路径获取指定的html或xml的文档对象,第二个参数是设置超时时间  (可以用来做爬虫)
 *
 *
 *    以下是2，3两种方法的演示
 *
 */
public class JsoupDemo1 {
    public static void main(String[] args) throws IOException {
        //第二种方法获取Document对象
        String str = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" +
                "<list>\n" +
                "    <emp id=\"1\">\n" +
                "        <name>张三</name>\n" +
                "        <age>20</age>\n" +
                "        <gender>男</gender>\n" +
                "        <salary>3000</salary>\n" +
                "    </emp>\n" +
                "    <emp id=\"2\">\n" +
                "        <name>李四</name>\n" +
                "        <age>23</age>\n" +
                "        <gender>女</gender>\n" +
                "        <salary>5000</salary>\n" +
                "    </emp>\n" +
                "    <emp id=\"3\">\n" +
                "        <name >王五</name>\n" +
                "        <age>28</age>\n" +
                "        <gender>男</gender>\n" +
                "        <salary>13000</salary>\n" +
                "    </emp>\n" +
                "    <emp id=\"4\">\n" +
                "        <name number=\"123\">赵六</name>\n" +
                "        <age>26</age>\n" +
                "        <gender>女</gender>\n" +
                "        <salary>9000</salary>\n" +
                "    </emp>\n" +
                "    <emp id=\"5\">\n" +
                "        <name>钱七</name>\n" +
                "        <age>45</age>\n" +
                "        <gender>男</gender>\n" +
                "        <salary>33000</salary>\n" +
                "    </emp>\n" +
                "</list>";
        Document doc1 = Jsoup.parse(str);
        System.out.println(doc1);
        System.out.println("--------------------------------");
        System.out.println("--------------------------------");

        //第3种获取Document对象方式
        URL url = new URL("https://gitee.com/chengylaoshi/JavaSE/blob/master/JavaSE_API_Xml/src/emplist.xml");
        Document doc2 = Jsoup.parse(url,10000);
        System.out.println(doc2);


    }
}
